import { Router } from 'vue-router';
// import store from '../store';
// import curConfig from '../../config';
// import { hasPermissionKey } from '@/utils/index';

// export function bindGuards(router: Router) {
//     router.beforeEach(async (to, from, next) => {
//         if (to?.meta?.needNotAuth) {
//             next();
//             return;
//         }
//         const curEnv = process.env.APP_DEPLOY_ENV || 'local';
//         const result = await store.dispatch('user/checkUser');
//         const permissions = store.getters['user/getPermissionList'];
//         const { baseURL } = curConfig[curEnv];
//         const loginUrl = `/${baseURL}/login`;
//         // 输入域名根目录根据实际权限跳转
//         if (to.path === '/') {
//             const defaultPage = permissions[0];
//             if (defaultPage && defaultPage.permissionKey) {
//                 next({ path: `/${defaultPage.permissionKey}` });
//             } else {
//                 window.location.href = loginUrl;
//             }
//             return;
//         }
//         if (to.meta.permissionKey) {
//             const hasThisPermissionKey = hasPermissionKey(
//                 permissions,
//                 to.meta.permissionKey as string,
//             );
//             if (!hasThisPermissionKey) {
//                 next({ path: '/unauthorized' });
//             }
//         }
//         if (!result) {
//             window.location.href = loginUrl;
//             return;
//         }
//         next();
//     });
// }

export function bindGuards(router: Router) {
    router.beforeEach(async (to, from, next) => {
        // if (to?.meta?.needNotAuth) {
        //     next();
        //     return;
        // }
        // const curEnv = process.env.APP_DEPLOY_ENV || 'local';
        // const result = await store.dispatch('user/checkUser');
        // const permissions = store.getters['user/getPermissionList'];
        // const { baseURL } = curConfig[curEnv];
        // const loginUrl = `/${baseURL}/login`;
        // // 输入域名根目录根据实际权限跳转
        // if (to.path === '/') {
        //     const defaultPage = permissions[0];
        //     if (defaultPage && defaultPage.permissionKey) {
        //         next({ path: `/${defaultPage.permissionKey}` });
        //     } else {
        //         window.location.href = loginUrl;
        //     }
        //     return;
        // }
        // if (to.meta.permissionKey) {
        //     const hasThisPermissionKey = hasPermissionKey(
        //         permissions,
        //         to.meta.permissionKey as string,
        //     );
        //     if (!hasThisPermissionKey) {
        //         next({ path: '/unauthorized' });
        //     }
        // }
        // if (!result) {
        //     window.location.href = loginUrl;
        //     return;
        // }
        next();
    });
}
